package com.uzai.console.service.sop;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.uzai.console.dto.sop.soptask.SopTaskDto;
import com.uzai.console.dto.sop.soptask.SopTaskIdDto;
import com.uzai.console.dto.sop.soptask.SopTaskQuery;
import com.uzai.console.vo.sop.soptask.SopTaskVo;

/**
 * @author liuqi
 * @date 2021年08月13日 11:33
 */
public interface SopTaskService {

    /**
     * 查询SOP任务列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param query
     * @return null
     */
    Page<SopTaskVo> findSopTaskList(SopTaskQuery query);

    /**
     * 查询SOP任务详情
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param sopTaskDto
     * @return null
     */
    SopTaskVo findSopTask(SopTaskIdDto sopTaskDto);

    /**
     * 添加SOP任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param sopTaskDto
     * @return null
     */
    void addSopTask(SopTaskDto sopTaskDto);

    /**
     * 编辑SOP任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param sopTaskDto
     * @return null
     */
    void updateSopTask(SopTaskDto sopTaskDto);

    /**
     * 删除SOP任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param sopTaskDto
     * @return null
     */
    void deleteSopTask(SopTaskIdDto sopTaskDto);

    /**
     * 停止SOP任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param sopTaskDto
     * @return null
     */
    void stopSopTask(SopTaskIdDto sopTaskDto);

    /**
     * 开启SOP任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param sopTaskDto
     * @return null
     */
    void startSopTask(SopTaskIdDto sopTaskDto);

    /**
     * 重置SOP任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param sopTaskDto
     * @return null
     */
    void resetSopTask(SopTaskIdDto sopTaskDto);

}
